package com.ctshk.rpc.order.bus.req;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * <p>
 * 巴士外挂单信息req
 * </p>
 *
 * @author 彭柳霖
 * @since 2021-02-25
 */
@Data
@ApiModel(value="BusManualOrderReq对象", description="巴士外挂单信息req")
public class BusManualOrderReq implements Serializable {

    private static final long serialVersionUID = 1L;

    @NotNull(message = "外挂单系统ID不能为空")
    @ApiModelProperty(value = "外挂单系统ID")
    private Long systemId;

    @ApiModelProperty(value = "外挂单系统名称")
    private String systemName;

    @ApiModelProperty(value = "服务费金额")
    private BigDecimal serviceAomunt;

    @NotNull(message = "出票方式不能为空")
    @ApiModelProperty(value = "出票方式")
    private Integer ticketMode;

//    @ApiModelProperty(value = "旅客属性")
//    private String passenger;
    
    @NotNull(message = "成本价币种ID不能为空")
    @ApiModelProperty("成本价币种ID")
    private Long costCurrencyId;
    
    @ApiModelProperty("成本价币种")
    private String costCurrency;
    
    @NotNull(message = "成本价格不能为空")
    @ApiModelProperty("成本价格")
    private BigDecimal costPrice;

    @ApiModelProperty(value = "订单信息")
    private BusOrderReq busOrderReq;
    
    @Valid
    @NotEmpty(message = "旅客列表不能为空")
    @ApiModelProperty("旅客列表")
    private List<BusManualOrderTouristReq> touristList;

}
